Rail Availability

The Rail Availability request returns schedules and/or fares for a specific journey plan. The default search is 'fastest journey' for 'all classes'. The response can include all journey legs with departure and arrival date and times, fares, and commercial offers.  

Note: At this time, only one-way or round-trip journeys are supported via the Rail Availability Search or Low Fare Shopping request.

A commercial offer consists of a price (made up of one or more fares) and an itinerary (both directions, for a round-trip journey), where the price and itinerary have been cross-checked against each other. RCS does not apply any commercial "best buy" logic or any filtering to the responses it receives from rail suppliers (e.g., to identify the lowest fares).

If the client requests both schedules and fares, then the service provides information about schedule and fare combinations (considering both the fare rules and the availability of the fare on specific services).

Available Suppliers (Distributors)

See RCS Distributor Content Functionality for a list and functional descriptions of currently supported RCS rail suppliers.

Request

RailAvailabilitySearchReq is used to request rail searches.

Minimum Data

SearchRailLeg contains the time and location data for one or more legs to be searched. The minimum required data for a Rail Search request are:

For the SearchOrigin and SearchDestination elements:

Optional Data

If not indicated in the request,for the ResponseType element:

Second Availability Request

A second Rail Availability request can be sent with the following data to request fares for specified train segments:

This functionality is provided for rail distributors that recommend a second Rail Availability or Exchange Quote request to confirm fares as part of their business processes. Currently, Amtrak offers this functionality.

Notes:

Modifiers

In addition to the minimum required data, modifiers can be added to the request to further define the search criteria.

Response

RailAvailabilitySearchRsp returns options for a requested Rail Availability.

A successful rail shop response includes the following information:

If a RailLocation is sent in SearchOrigin and RCS does not return an IATA Code or UCode/TCode, the response returns a warning message: A successful rail shop response has been returned by the rail distributor. However, the rail distributor did not return one or more origin and/or destination location codes. 

If RCS does not return FareClass in the response, CabinClass="Economy" will be mapped. In older schemas, CabinClass= "Standard" is mapped.

Universal API maps the TrainServiceType value to the RailSegment attribute TrainTypeCode and the Description to the TrainType attribute. If the value sent by RCS in TrainServiceType is not found, the value of "UNKNOWN" is returned in the TrainType attribute. In older schemas, if 7.TNP thru 63.TNP are returned by RCS, Univeral API maps "UNKNOWN" in TrainType.

Reservation Required

Some rail suppliers require seat reservations to confirm a booking. In RailSegment, if ReservationRequired="true," then a reservation is required for the selected journey. The traveler must book the journey with the supplier.

Errors and Warnings

An unsuccessful Rail Availability response includes either:

Possibly one or more warnings may display that certain request criteria were not passed to a supplier (typically because the supplier does not support the specified criterion).

If the schema only supports FareReference with "StringLength1to8" and the FareReference value returned by RCS is larger than eight characters, the FareReference value is truncated. The booking does not fail, but a warning message is returned in the response: The RailFare @ FareReference value has been truncated. The complete FareReference value is #.", where # is the complete FareReference value.

Exceptions